package com.tm;

import java.util.Scanner;

/**
 * 2024/5/2
 */
public class Demo23 {
    public static void main(String[] args) {
        //目标：掌握数组的遍历
        int [] ages={20,19,18};
        for (int i = 0; i <ages.length ; i++) {
            System.out.println(ages[i]);
        }
        /**
         * 1.什么是遍历？
         * 定义一个数组 把数组中的数据输出
         *
         * 2.如何遍历数组？
         * 定义一个数组 for循环遍历数组中的数据
         * 首先获取数据的长度 根据数据下标遍历数组
         */

        //需求：
         //1.某部门5名员工的销售额分别是：16 26 36 6 100,请计算出他们部门的总销售额

        int [] arr={16,26,36,6,100};
        int sum=0;
        for (int i = 0; i < arr.length; i++) {
            sum+=arr[i];
        }
        System.out.println(sum);



        //目标：掌握定义数组的方式：动态初始化数组
        //1.数据类型[] 数组名=new 数据类型【长度】
        int[] CS=new int[3];
        System.out.println(CS[0]);
        System.out.println(CS[1]);
        System.out.println(CS[2]);

        char[] aa=new char[3];
        System.out.println((int)aa[0]);
        System.out.println((int)aa[1]);


        double [] bb={1,2,3};
        System.out.println(bb[0]);
        for (int i= bb.length-1;i>=0;i--) {
            System.out.println(bb[i]);
        }
        boolean[] a=new boolean[100];
        System.out.println(a[99]);

        String[] names= new String[100];
         System.out.println(names[0]);
         System.out.println(names[79]);

          //1.某歌词比赛，需要开发一个系统：可以录入6名评委的打分，录入完毕后立即输出平均分作为选手得分
              double avg=0;
              double[] pw={3.5,6.9,9.5,5.6,3.7,9.8};
        for (int i = 0; i <pw.length; i++) {
                   avg+=pw[i];
        }
        System.out.println(avg/pw.length);

        double[] scores= new double[6];
        Scanner sc =new Scanner(System.in);
        for (int s = 0; s < scores.length; s++) {
            System.out.println("请您输入当前第"+(s+1)+"个评委的分数:");
            double socre=sc.nextDouble();
            scores[s]=socre;


        }
        double sum1=0;
        for (int i = 0; i < scores.length; i++) {
            sum1+=scores[i];
        }
        System.out.println(sum1/ scores.length);
    }


        /**
         * 1.定义一个数组
         * 2.定义一个求和变量
         * 3.循环变量数组长度
         * 4.求和变量+=数组的下标
         * 5.输出求和变量的数组值
         */


    /**
     * 1.动态初始化数组的写法是什么样的？有什么特点？
     * int[] ages=new int[4];
     *
     * 2.动态初始化数组后元素的默认值是什么样的?
     * byte short int char long类型数组的元素默认值都是0
     * float double类型数组元素的默认值都是0.0
     * boolean类型数组的元素默认值是false,String类型数组的元素默认是Null
     *
     * 3.两种数组定义的方法各自适合什么业务场景
     * 动态初始化：合适开始不确定具体元素值，只知道元素个数的业务场景
     * 静态初始化：适合一开始就知道要存入哪些元素值的业务场景
     *
     *
     */

}
